The present invention relates to a data processing device for receiving remote commands and executing a process to implement a function from among one or more functions. The invention also relates to a terminal device used when connected to and capable of performing data communications with the data processing device.
Data processing devices having one or more functions, such as a printer function and a scanner function, are well known in the art. Normally, this type of data processing device is configured to receive commands from a terminal device and to implement various functions.
In order to use the various functions possessed by the data processing device, it has been necessary to provide the terminal device with an application program for providing a user interface to use the various functions and a special device driver for controlling the operations of the data processing device itself. The user of the terminal device launches the above application program and performs an operation corresponding to the desired function to control the operations of the data processing device via the device driver. In this way, the user can use the various functions.
In recent years, various technologies have been proposed for improving user-friendliness (the user interface) in this type of data processing device. For example, one such data processing device (facsimile machine A) includes a storage unit (RAM 12) that a terminal device (personal computer PC) can recognize as an external storage device connected to the terminal device itself as disclosed in Japanese patent application publication No. 2001-282694. When the terminal device stores data in this storage unit, the user is prompted to select a function to use for processing the data, and the data is processed based on the selected function. After the user selects a function in this data processing device, an instruction indicating the selected function is transmitted to the data processing device via a device driver (driver program) installed on the terminal device end.
Since the various functions possessed by the data processing device are used from the terminal device end in this type of data processing device, it is necessary to exchange commands directly between the terminal device and the data processing device via a special device driver.
Normally, the device driver is developed and provided in conjunction with the operating system (OS) incorporated on the terminal device end. Hence, the device driver must be updated when the OS is updated, or else the data processing device may not operate properly. The work required to upgrade the device driver can be extremely troublesome and a great burden on the user. Further, the party that develops and provides the data processing device must expend a large development cost in order to develop and upgrade the device driver for each OS and each time the OS is upgraded.
Therefore, there has been great demand in recent years for a technology to enable use of functions possessed by the data processing device without going through a device driver.